#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int g[1100];
int main()
{
	vector<int> arr;
	int num;
	while(cin>>num)
	{
		arr.push_back(num);
	}
	int n=arr.size();
	vector<int> dp(n);
	int ret=0;
	for(int i=0;i<n;i++)
	{
		dp[i]=1;
		for(int j=0;j<i;j++)
		{
			if(arr[i]<=arr[j])
			{
				dp[i]=max(dp[i],dp[j]+1);
			}
		}
		ret=max(ret,dp[i]);
	}
	cout<<ret<<endl;
	int cnt=0;
	for(int i=0;i<n;i++)
	{
		int k=0;
		while(k<cnt && g[k]<arr[i]) k++;
		g[k]=arr[i];
		if(k==cnt)
			cnt++;
	}
	cout<<cnt<<endl;
	return 0;
}
